//Promise：es6新添加的一个构造函数，用于解决异步函数回调层层嵌套的问题

//promise有三种工作状态：
// 1.pending：正在运行（初始状态）
// 2.fulfilled：操作成功完成
// 3.rejected：操作失败

//封装一个函数，防止Promise调用时自动执行的问题
function AsyncFn(){
    let p = new Promise( (resolve, reject) => {
        //异步操作
        setTimeout( () => {
            //模拟加载图片
            console.log('模拟图片加载成功');
            //异步操作完成后执行resolve函数；
            resolve();//接收来自then里面的函数块
        }, 1000)
    });
    //返回一个promise的实例对象
    return p;
}
//then方法里的参数是一个函数块，函数块传给了promise里面的resolve
AsyncFn().then( () => {
    console.log('图片已经加载到html中');
});
